home *** CD-ROM | disk | FTP | other *** search
- #define NUMVAL(x) (x - '0')
- #define TONUM(x) NUMVAL(x)
- #define TODIGIT(x) (x + '0')
- static char trconst[] = {'3', '7', '1', '3',
- '7', '1', '3', '7'};
- char calc_check_digit (char * trnum)
- {
- int sum, val;
- int i;
- for ( sum = i = 0 ; i < 8 ; i++)
- {
- sum += TONUM (trnum[i]) * TONUM (trconst[i]);
- }
- val = 10 - (sum % 10);
- if (val == 10)
- val = 0;
- return (TODIGIT (val));
- }
-
-
-